<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <style>
        .box {
            position: relative;
            width: 400px;
            border-bottom: 1px solid #ccc;
            margin: 100px auto;
        }
        
        .box input {
            width: 370px;
            height: 30px;
            outline: none;
        }
        
        .box img {
            position: absolute;
            top: 10px;
            right: 25px;
            width: 24px;
        }
    </style>
</head>

<body>
    <div class="box">
        <label for="">
            <img src="images/close.jpg" alt="" id='eye'>
        </label>
        <input type="password" name='' id='pwd'>
    </div>

    <script>
        // 点击按钮将密码框切换为文本框，并可以查看密码明文。
        // 核心思路:点击眼睛按钮，把密码框类型改为文本框就可以看见里面的密码
        // 算法：利用一个flag变量，来判断flag的值，如果是1就切换为文本框，flag设置为0；如果是0 就切换为密码框，flag设置为1
        // 1. 获取元素
        var eye = document.getElementById('eye');
        var pwd = document.getElementById('pwd');
        // 2. 注册事件 处理程序
        var flag = 0;
        eye.onclick = function() {
            // 点击一次之后 flag 一定要变化
            if (flag == 0) {
                pwd.type = 'text'; // 可以看见输入的内容
                eye.src = 'images/open.jpg'; // 眼睛是打开的图标
                flag = 1;
            } else {
                pwd.type = 'password'; // 隐藏输入的内容
                eye.src = 'images/close.jpg'; // 眼睛是关闭的图标
                flag = 0;
            }

        }
    </script>

</body>

</html>